if (typeof(Qfang) == "undefined") {
	Qfang={};
	Qfang.ClassUtil={};
	Qfang.ClassUtil.extend=function(destination,source){if(destination&&source){for(var property in source){destination[property]=source[property];
	}if(source.hasOwnProperty&&source.hasOwnProperty("toString")){destination.toString=source.toString;
	}}return destination;
	};
	Qfang.ClassUtil.applyDefaults=function(to,from){for(var key in from){if(to[key]==null){to[key]=from[key];
	}}};
	Qfang.Class=function(){var extended={};
	var parent;
	for(var i=0;
	i<arguments.length;
	i++){if(typeof arguments[i]=="function"){parent=arguments[i].prototype;
	}else{parent=arguments[i];
	}Qfang.ClassUtil.extend(extended,parent);
	}for(var i=0;
	i<arguments.length;
	i++){delete arguments[i];
	}var Class=function(){if(typeof this.construct=="function"){this.construct.apply(this,arguments);
	}};
	Class.prototype=extended;
	Class.prototype.constructor=Class;
	return Class;
	};
}